package classi_base;


/**
 * Un oggetto della classe <code>Canna</code> rappresenta una canna dell'organo
 * e contiene le informazioni della canna e i metodi per accedere/modificare
 * tali informazioni.
 * 
 * @author Andrea Zonca
 * @author Michele Brignoli
 * @version 3.0
 */
public class Canna {
	
	// CAMPI
	private double diametro;		// diametro della canna
	private double minDistance;		// distanza minima a cui deve essere posta la canna rispetto a un'altra canna
	
	// COSTRUTTORE
	/**
	 * Imposta diametro e distanza minima della canna
	 * 
	 * @param d diametro della canna
	 * @param m distanza minima della canna
	 */
	public Canna(double d, double m){
		diametro = d;
		minDistance = m;
	}
	
	// METODI
	/**
	 * Imposta il diametro della canna
	 * 
	 * @param d il diametro della canna
	 */
	public void setDiametro(double d){
		this.diametro=d;
	}

	/**
	 * Restituisce il diametro della canna
	 * 
	 * @return il diametro della canna
	 */
	public double getDiametro(){
		return diametro;
	}
	
	/**
	 * Restituisce il raggio della canna
	 * 
	 * @return il raggio della canna
	 */	
	public double getRaggio(){
		return diametro/2.0;
	}
	
	/**
	 * Imposta la distanza minima della canna
	 * 
	 * @param d la distanza minima della canna
	 */
	public void setMinDistance(int d){
		this.minDistance=d;
	}
	
	/**
	 * Restituisce la distanza minima della canna
	 * 
	 * @return la distanza minima della canna
	 */
	public double getMinDistance(){
		return minDistance;
	}		
}